'''
这个星号虽然放在re的前面，但是它和re或者re.findall并没有直接的关系，相反，和它有关的是int
i = int(*re.findall('^[\+\-]?\d+', s.lstrip()))
相当于
result = re.findall('^[\+\-]?\d+', s.lstrip())
i = int(*result)
这个result是一个列表，而int接受的是单个的参数，所以需要通过*的unpack运算将它转换为元组。
int(*result)其实就是 int(result[0])
'''

class Solution:
    def myAtoi(self, s: str) -> int:
        return max(min(int(*re.findall('^[\+\-]?\d+', s.lstrip())), 2**31 - 1), -2**31)